package edu.nf.exam.dao;

import edu.nf.exam.entity.UserInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author : PYY
 * @create 2021/6/17
 */
public interface UserInfoDao {
    /**
     *根据用户名查询用户信息
     * @param userName
     * @return
     */
    UserInfo getUserByName(String userName);

    /**
     * 多条件查询用户
     * @param userInfo
     * @return
     */
    List<UserInfo> select(UserInfo userInfo);

     /* 用户注册
     * @param user
     * @return
     */
    int register(UserInfo user);

    /**
     * 修改用户信息
     * @param userInfo
     * @return
     */
    int update(UserInfo userInfo);

    /**
     * 分页查询
     * @param userName 条件查询，根据角色
     * @param pageNum 当前页 @Param注解的value值必须是pageNum,
     * @param pageSize 每页记录数 @Param注解的value值必须是pageSize
     * @param role 根据身份查询
     * @param userId 用户id
     */
    List<UserInfo> listUserInfo(@Param("userId")Integer userId,
                                @Param("userName")String userName,
                                @Param("role")Integer role,
                                @Param("pageNum")Integer pageNum,
                                @Param("pageSize")Integer pageSize);



}
